package com.pmenergy.model;
// Generated 21/09/2014 09:22:26 PM by Hibernate Tools 3.4.0.CR1

import java.math.BigDecimal;
import javax.persistence.AttributeOverride;
import javax.persistence.AttributeOverrides;
import javax.persistence.Column;
import javax.persistence.EmbeddedId;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;

/**
 * MaterialActividad generated by hbm2java
 */
@Entity
@Table(name = "MATERIAL_ACTIVIDAD", schema = "TECNOTREE")
public class MaterialActividad implements java.io.Serializable {

	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	private MaterialActividadId id;
	private Actividad actividad;
	private Material material;
	private BigDecimal unidad;
	private BigDecimal cantidad;
	private BigDecimal precioUnitario;
	private BigDecimal costo;

	public MaterialActividad() {
	}

	public MaterialActividad(MaterialActividadId id, Actividad actividad,
			Material material) {
		this.id = id;
		this.actividad = actividad;
		this.material = material;
	}

	public MaterialActividad(MaterialActividadId id, Actividad actividad,
			Material material, BigDecimal unidad, BigDecimal cantidad,
			BigDecimal precioUnitario, BigDecimal costo) {
		this.id = id;
		this.actividad = actividad;
		this.material = material;
		this.unidad = unidad;
		this.cantidad = cantidad;
		this.precioUnitario = precioUnitario;
		this.costo = costo;
	}

	@EmbeddedId
	@AttributeOverrides({
			@AttributeOverride(name = "materialId", column = @Column(name = "MATERIAL_ID", nullable = false, precision = 22, scale = 0)),
			@AttributeOverride(name = "actividadId", column = @Column(name = "ACTIVIDAD_ID", nullable = false, precision = 22, scale = 0)) })
	public MaterialActividadId getId() {
		return this.id;
	}

	public void setId(MaterialActividadId id) {
		this.id = id;
	}

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "ACTIVIDAD_ID", nullable = false, insertable = false, updatable = false)
	public Actividad getActividad() {
		return this.actividad;
	}

	public void setActividad(Actividad actividad) {
		this.actividad = actividad;
	}

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "MATERIAL_ID", nullable = false, insertable = false, updatable = false)
	public Material getMaterial() {
		return this.material;
	}

	public void setMaterial(Material material) {
		this.material = material;
	}

	@Column(name = "UNIDAD", precision = 22, scale = 0)
	public BigDecimal getUnidad() {
		return this.unidad;
	}

	public void setUnidad(BigDecimal unidad) {
		this.unidad = unidad;
	}

	@Column(name = "CANTIDAD", precision = 22, scale = 0)
	public BigDecimal getCantidad() {
		return this.cantidad;
	}

	public void setCantidad(BigDecimal cantidad) {
		this.cantidad = cantidad;
	}

	@Column(name = "PRECIO_UNITARIO", precision = 22, scale = 0)
	public BigDecimal getPrecioUnitario() {
		return this.precioUnitario;
	}

	public void setPrecioUnitario(BigDecimal precioUnitario) {
		this.precioUnitario = precioUnitario;
	}

	@Column(name = "COSTO", precision = 22, scale = 0)
	public BigDecimal getCosto() {
		return this.costo;
	}

	public void setCosto(BigDecimal costo) {
		this.costo = costo;
	}

}
